package com.syf.starter.kafka.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

import javax.validation.constraints.NotNull;

/**
 * Kafka Consumer Server配置类
 */
@Data
@ConfigurationProperties(prefix = "server.kafka-customer")
public class SyKafkaCustomerServerConfiguration {
    
    /**
     * Kafka服务器地址
     */
    @NotNull
    private String bootstrapServers = "localhost:9092";
    
    /**
     * 消费者组ID
     */
    private String groupId = "default-group";

    /**
     * auto reset config
     * */
    private String autoReset = "lastest";
    
    /**
     * 自动提交偏移量
     */
    private Boolean enableAutoCommit = true;
    
    /**
     * 自动提交间隔
     */
    private Integer autoCommitInterval = 1000;
    
    /**
     * 会话超时时间（毫秒）
     */
    private Integer sessionTimeout = 30000;
    
    /**
     * 最大拉取记录数
     */
    private Integer maxPollRecords = 100;

    /**
     * 消息拉取时间间隔（毫秒）
     */
    private Integer pollInterval = 1000;
}